package com.zwps.biz.dal.db.dao;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zwps.biz.api.model.dto.dsmdrfsrhrds.DsmDfrSrhrdsDTO;
import com.zwps.biz.api.model.vo.dsmdfrsrhrds.DsmAVO;
import com.zwps.biz.api.model.vo.dsmdfrsrhrds.DsmDfrSrhrdsMinMaxVO;
import com.zwps.biz.api.model.vo.dsmdfrsrhrds.DsmDfrSrhrdsVO;
import com.zwps.biz.api.model.vo.dsmdfrsrhrds.DsmVO;
import com.zwps.biz.api.model.vo.dsmspgpzwl.DsmHistoryDateVo;
import com.zwps.biz.dal.db.object.DsmDfrSrhrdsDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @Entity com.zwps.biz.dal.db.object.DsmDfrSrhrds
 */
@DS("one")
public interface DsmDfrSrhrdsDAO extends BaseMapper<DsmDfrSrhrdsDO> {
    @DS("one")
    IPage<Map<String, Object>> getHorizontal(Page<?> page, @Param("stringList") List<String> stringList,
                                             @Param("startTime") Date startTime, @Param("endTime") Date endTime);

    @DS("one")
    List<DsmDfrSrhrdsMinMaxVO> getMinMax(@Param("params") Map<String, Object> params, @Param("srhrdsDTO") DsmDfrSrhrdsDTO srhrdsDTO);

    List<String> getMpcd(String mpcd);

    List<String> getStation();

    List<DsmDfrSrhrdsVO> getLastStation();

    Map<String, Object> getPzwlSrhrdsCount();

    IPage<DsmAVO> gethistoryData(IPage<DsmAVO> page, @Param("mpcd") String mpcd,
                                 @Param("startTime") String startTime,
                                 @Param("endTime") String endTime,

                                 @Param("type") Integer type,
                                 @Param("table") String table);
}




